<?xml version="1.0" encoding="UTF-8"?>
<ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:p="http://primefaces.org/ui"
	template="/templates/template.xhtml" xmlns:eq="http://www.equus.com.br/facelets/">

	<f:metadata>
		<f:event type="preRenderView" listener="#{manejoExibicaoBean.verificarAcesso}" />
	</f:metadata>

	<ui:define name="body">
		<h:form id="form" prependId="false">
			<h:panelGrid id="tagOs" width="100%">
				<eq:animal animal="#{manejoExibicaoBean.animal}" />
			</h:panelGrid>
			<p:toolbar>
				<p:toolbarGroup align="left">
					<p:commandButton value="Voltar" immediate="true" ajax="false" action="pesquisarAnimal.jsf" />
				</p:toolbarGroup>
			</p:toolbar>
			<br />

			<p:dataTable var="lista" id="lista" emptyMessage="#{manejoExibicaoBean.emptyMessage}" update="lista"
				rowsPerPageTemplate="#{manejoExibicaoBean.paginacao}" styleClass="coluna100"
				value="#{manejoExibicaoBean.lazyDataModel}" paginator="true" rows="5" style="width:100%;"
				rowStyleClass="#{empty rowIx or rowIx mod 2 ne 0 ? 'linhaImpar' : 'linhaPar'}" rowIndexVar="rowIx">

				<p:column headerText="Executor" sortBy="#{lista.usuarioExecutor.nome}" filterBy="#{lista.usuarioExecutor.nome}"
					style="width:15%">
					<h:outputLabel value="#{lista.usuarioExecutor.nome}" />
				</p:column>
				<p:column headerText="Avaliador" sortBy="#{lista.usuarioAvaliador.nome}" filterBy="#{lista.usuarioAvaliador.nome}"
					style="width:15%">
					<h:outputLabel value="#{lista.usuarioAvaliador.nome}" />
				</p:column>
				<p:column headerText="Tarefa" filterBy="#{lista.tipoTarefa.descricao}" sortBy="#{lista.tipoTarefa.descricao}"
					style="width:10%">
					<h:outputLabel value="#{lista.tipoTarefa.descricao}" />
				</p:column>
				<p:column headerText="Início" sortBy="#{lista.dtInicio}" style="width:10%">
					<h:outputLabel value="#{lista.dtInicioString}" />
				</p:column>
				<p:column headerText="Fim" sortBy="#{lista.dtFim}" style="width:10%">
					<h:outputLabel value="#{lista.dtFimString}" />
				</p:column>
				<p:column headerText="Observação" filterBy="#{lista.observacao}" style="width:25%">
					<h:outputText value="#{lista.observacao}" />
				</p:column>
				<p:column headerText="Status" sortBy="#{lista.statusAtual}" style="width:8%">
					<h:outputLabel value="#{lista.statusAtual.statusExecucao.descricao}" />
				</p:column>
				<p:column headerText="Ações" style="width:12%;text-align:center;">
					<p:commandLink rendered="#{lista.statusAtual.statusExecucao.id == 4 and p:ifGranted('ROLE_MANEJO_CANCELAR')}" title="Cancelar" process="@this"
						oncomplete="confirmationCancelar.show()">
						<h:graphicImage library="design/imagem" name="icone-cancelar.png" />
						<f:setPropertyActionListener target="#{manejoExibicaoBean.manejoAux}" value="#{lista}" />
					</p:commandLink>
					<p:spacer width="10" />
					<p:commandLink rendered="#{lista.statusAtual.statusExecucao.id == 4 and p:ifGranted('ROLE_MANEJO_FINALIZAR')}" title="Finalizar" process="@this"
						oncomplete="confirmationFinalizar.show()">
						<f:setPropertyActionListener target="#{manejoExibicaoBean.manejoAux}" value="#{lista}" />
						<h:graphicImage library="design/imagem" name="icone-finalizar.png" />
					</p:commandLink>
					<p:commandLink rendered="#{lista.statusAtual.statusExecucao.id != 4}" action="#{manejoExibicaoBean.loadVisualizar}"
						update=":form:popupVisualizar" title="Visualizar" process="@this" oncomplete="exibirCancelar.show()">
						<h:graphicImage library="design/imagem" name="icone-visualizar.png" />
						<f:setPropertyActionListener target="#{manejoExibicaoBean.manejoAux}" value="#{lista}" />
					</p:commandLink>
				</p:column>
			</p:dataTable>

			<p:dialog appendToBody="false" header="Finalizar" widgetVar="confirmationFinalizar" width="400" height="150">
				<br />
				<h:panelGrid columns="2" id="panelFinalizar" columnClasses="coluna20,coluna80" width="100%">
					<h:outputLabel value="Motivo:" />
					<p:inputTextarea cols="40" rows="4" value="#{manejoExibicaoBean.motivoFinalizar}" id="motivoFinal" />
				</h:panelGrid>
				<br />
				<br />
				<div align="center">
					<p:commandButton value="Salvar" ajax="false" oncomplete="confirmationFinalizar.hide()"
						action="#{manejoExibicaoBean.finalizar}" />
					<p:commandButton value="Fechar" onclick="confirmationFinalizar.hide()" />
				</div>
			</p:dialog>

			<p:dialog appendToBody="false" header="Cancelamento" widgetVar="confirmationCancelar" width="400" height="150">
				<br />
				<h:panelGrid columns="2" id="panelCancelar" columnClasses="coluna20,coluna80" width="100%">
					<h:outputLabel value="Motivo:" />
					<p:inputTextarea cols="40" rows="4" value="#{manejoExibicaoBean.motivoCancelar}" id="motivo" />
				</h:panelGrid>
				<br />
				<br />
				<div align="center">
					<p:commandButton value="Salvar" ajax="false" oncomplete="confirmationCancelar.hide()"
						action="#{manejoExibicaoBean.cancelar}" />
					<p:commandButton value="Fechar" onclick="confirmationCancelar.hide()" />
				</div>
			</p:dialog>

			<p:dialog appendToBody="false" header="Cancelamento" id="popupVisualizar" widgetVar="exibirCancelar" width="400"
				height="150">
				<br />
				<h:panelGrid columns="2" id="panelCancelarExib" columnClasses="coluna20,coluna80" width="100%">
					<h:outputLabel value="Motivo:" />
					<p:inputTextarea disabled="true" cols="40" rows="4" value="#{manejoExibicaoBean.motivoVisualizar}" />
				</h:panelGrid>
				<br />
				<br />
				<div align="center">
					<p:commandButton value="Fechar" onclick="exibirCancelar.hide()" />
				</div>
			</p:dialog>

		</h:form>
	</ui:define>
</ui:composition>